package org.liangsy.client.user.dao;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

@Data
@TableName("user_operation_log")
public class UserOperationLog {
    @TableId
    // 自增主键
    private Long logId;
    // 操作类型（1:注册 2:登录 3:忘记密码 4:重置密码）
    private Integer operationType;
    // 用户ID（注册时可为空）
    private String userId;
    // 请求唯一标识（UUID）
    private String requestId;
    // 客户端类型（1:Web 2:iOS 3:Android 4:小程序）
    private Integer clientType;
    // 操作IP（支持IPv6）
    private String ipAddress;
    // 用户设备信息
    private String userAgent;
    // 操作时间（毫秒级时间戳）
    private Long operationTime;
    // 操作结果（1=成功，0=失败）
    private Integer result;
    // 错误码（如AUTH-1001）
    private String errorCode;
    // 扩展数据（建议存储JSON字符串，需应用层解析）
    private String metadata;
}